home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 60.zip / BS1 part 60 / Helm d3.adf / EarTrainer (.txt) < prev    next >
Helm Multimedia Book  |  1993-09-01  |  36KB  |  591 lines

  1. EarTrainer
  2. Scott Nickerson
  3. 08-20-93
  4. MUSIC CBT 
  5. on BookOpen
  6. begin
  7.   global midikey
  8.   play notes "T140 d5q. a4e b a"
  9.   lock display
  10.   put "Welcome to EarTrainer." into textfield "Tell"
  11.   unlock display
  12.   set midi to false
  13.   put false into midikey
  14. midikey
  15. T140 d5q. a4e b a
  16. Welcome to EarTrainer.
  17. New...
  18. Open...
  19. Make Copy...
  20. Streamline...
  21. Print...
  22.     Report...
  23. Preferences...
  24.     Workbench
  25. Help...
  26. About...
  27. Quit...
  28. Paste
  29. Clear
  30. Select All
  31. Cut Page
  32.     Copy Page
  33. Colors
  34. Load...
  35. Save...
  36. Restore Colors
  37. Default Colors
  38. Brush Colors
  39. Image Colors
  40. Cycle
  41. Grid...
  42. Stop Sound
  43. Show All
  44. Unlock All
  45.     Edit Form
  46. Share
  47.     Next Page
  48. Previous Page
  49. First Page
  50.     Last Page
  51. Backward
  52. Forward
  53.     Last Book
  54.     Browse...
  55. Autobrowse...
  56.     Bookshelf
  57. New Page
  58. Delete Page
  59. New Form
  60. Load Form...
  61. Save Form...
  62. Image
  63. Load...
  64. Save...
  65. Capture...
  66.     Clipboard
  67. Paste
  68. Spare
  69. Swap Frames
  70. Copy to Spare
  71. Merge in Front
  72. Merge in Back
  73. Delete Spare
  74. Frame
  75. Previous
  76. Delete
  77. Copy to All
  78. Color
  79. Remap
  80. Transparency
  81. Paper <-> Pen
  82. Paper ->  Pen
  83. Count
  84. Vertical
  85. Horizontal
  86. Info...
  87. Brush
  88. Load...
  89. Save...
  90. Restore
  91.     Clipboard
  92. Paste
  93. Color
  94. Remap
  95. Transparency
  96. Paper <-> Pen
  97. Paper ->  Pen
  98. Center
  99. Corner
  100.     Any Point
  101. Any Size
  102. Halve
  103. Double
  104. Halve Width
  105. Halve Height
  106. Double Width
  107. Double Height
  108. To PAL
  109. To NTSC
  110. Vertical
  111. Horizontal
  112. Shear
  113. Vertical
  114. Horizontal
  115. Rotate
  116.     Any Angle
  117. Paint
  118. Matte
  119. Color
  120. Replace
  121. Smear
  122. Dissolve
  123. Spare
  124. Cycle
  125. Cycle 2
  126. Gradient
  127. Gradient 2
  128. Smudge
  129. Chaos
  130. Count
  131. Custom
  132. Dither
  133. Edges
  134. Object
  135. Load...
  136. Save...
  137. Bring to Front
  138. Send to Back
  139. Bring Closer
  140. Send Farther
  141. Group
  142. Ungroup
  143. Duplicate...
  144. Align...
  145. Info...
  146. Actions...
  147.     Script...
  148. Load...
  149. Save...
  150. Plain
  151.     Underline
  152. Italic
  153. Shadow
  154. Font...
  155. Spacing...
  156.     Hypertext
  157. Actions...
  158.     Script...
  159. Tools
  160. Coordinates
  161.     Title Bar
  162. Palette
  163. Colors
  164. Patterns
  165. Paint Tools
  166. Paint Types
  167.     Histogram
  168.     Magnifier
  169. Messages
  170. Draw Tools
  171. Layers
  172. Pages
  173. Author
  174. Book...
  175. Form...
  176. Page...
  177. Display...
  178. Menus...
  179. Narrator...
  180. Hypertext...
  181. Resources...
  182.     Effect...
  183. Effect Area
  184. Book23
  185. PTopaz8
  186. topaz.font
  187. PTopaz.font
  188. DF0:Shackleton.text
  189. DF0:eagle.8svx
  190. DF0:Shackleton.text
  191. fs1:fonts/PTopaz/8
  192. Helm_3:/FBI
  193. ram:Brown.colors
  194. Fast2:Action.pic
  195. ram:page.script
  196.     /TestBook
  197.               EarTrainer V1.0
  198. Click on the interval buttons to memorize
  199. )the intervals. When you feel that you can
  200. )recognize any interval, you can test your
  201. *skills by taking a ten interval quiz or by
  202. +trying to identify a single randomly chosen
  203. ,interval. EarTrainer plays the first note of
  204. (every interval as middle C. When you are
  205. .testing your ears, you should  click on one of
  206. +the interval buttons after EarTrainer plays
  207. the two notes of the interval.
  208. Welcome to EarTrainer.
  209.  Unison
  210.  Minor Second
  211.  Major Second
  212.  Augmented Second/Minor Third
  213.  Major Third
  214.  Perfect Fourth
  215. " Augmented Fourth/Diminished Fifth
  216.  Perfect Fifth
  217.  Augmented Fifth/Minor Sixth
  218.  Major Sixth/Diminished Seventh
  219.  Major Seventh
  220.  Octave
  221. @IInformation
  222. @BBookshelf
  223. @QTake Quiz
  224. @TTest Random
  225.  Augmented Sixth/Minor Seventh
  226. Played
  227. Tested
  228. @MSEND NOTES TO MIDI PORT
  229. kon SelectUp
  230. begin
  231.   global midikey
  232.   if midikey is true then play notes "MX 61"
  233.   else play notes "61"
  234. midikey
  235. MX 61
  236. kon SelectUp
  237. begin
  238.   global midikey
  239.   if midikey is true then play notes "MX 63"
  240.   else play notes "63"
  241. midikey
  242. MX 63
  243. kon SelectUp
  244. begin
  245.   global midikey
  246.   if midikey is true then play notes "MX 60"
  247.   else play notes "60"
  248. midikey
  249. MX 60
  250. kon SelectUp
  251. begin
  252.   global midikey
  253.   if midikey is true then play notes "MX 62"
  254.   else play notes "62"
  255. midikey
  256. MX 62
  257. kon SelectUp
  258. begin
  259.   global midikey
  260.   if midikey is true then play notes "MX 64"
  261.   else play notes "64"
  262. midikey
  263. MX 64
  264. kon SelectUp
  265. begin
  266.   global midikey
  267.   if midikey is true then play notes "MX 66"
  268.   else play notes "66"
  269. midikey
  270. MX 66
  271. kon SelectUp
  272. begin
  273.   global midikey
  274.   if midikey is true then play notes "MX 65"
  275.   else play notes "65"
  276. midikey
  277. MX 65
  278. kon SelectUp
  279. begin
  280.   global midikey
  281.   if midikey is true then play notes "MX 68"
  282.   else play notes "68"
  283. midikey
  284. MX 68
  285. kon SelectUp
  286. begin
  287.   global midikey
  288.   if midikey is true then play notes "MX 70"
  289.   else play notes "70"
  290. midikey
  291. MX 70
  292. kon SelectUp
  293. begin
  294.   global midikey
  295.   if midikey is true then play notes "MX 69"
  296.   else play notes "69"
  297. midikey
  298. MX 69
  299. kon SelectUp
  300. begin
  301.   global midikey
  302.   if midikey is true then play notes "MX 71"
  303.   else play notes "71"
  304. midikey
  305. MX 71
  306. kon SelectUp
  307. begin
  308.   global midikey
  309.   if midikey is true then play notes "MX 73"
  310.   else play notes "73"
  311. midikey
  312. MX 73
  313. kon SelectUp
  314. begin
  315.   global midikey
  316.   if midikey is true then play notes "MX 75"
  317.   else play notes "75"
  318. midikey
  319. MX 75
  320. kon SelectUp
  321. begin
  322.   global midikey
  323.   if midikey is true then play notes "MX 72"
  324.   else play notes "72"
  325. midikey
  326. MX 72
  327. kon SelectUp
  328. begin
  329.   global midikey
  330.   if midikey is true then play notes "MX 74"
  331.   else play notes "74"
  332. midikey
  333. MX 74
  334. kon SelectUp
  335. begin
  336.   global midikey
  337.   if midikey is true then play notes "MX 76"
  338.   else play notes "76"
  339. midikey
  340. MX 76
  341. kon SelectUp
  342. begin
  343.   global midikey
  344.   if midikey is true then play notes "MX 78"
  345.   else play notes "78"
  346. midikey
  347. MX 78
  348. kon SelectUp
  349. begin
  350.   global midikey
  351.   if midikey is true then play notes "MX 77"
  352.   else play notes "77"
  353. midikey
  354. MX 77
  355. kon SelectUp
  356. begin
  357.   global midikey
  358.   if midikey is true then play notes "MX 79"
  359.   else play notes "79"
  360. midikey
  361. MX 79
  362. kon SelectUp
  363. begin
  364.   global midikey
  365.   if midikey is true then play notes "MX 80"
  366.   else play notes "80"
  367. midikey
  368. MX 80
  369. kon SelectUp
  370. begin
  371.   global midikey
  372.   if midikey is true then play notes "MX 82"
  373.   else play notes "82"
  374. midikey
  375. MX 82
  376. kon SelectUp
  377. begin
  378.   global midikey
  379.   if midikey is true then play notes "MX 81"
  380.   else play notes "81"
  381. midikey
  382. MX 81
  383. kon SelectUp
  384. begin
  385.   global midikey
  386.   if midikey is true then play notes "MX 83"
  387.   else play notes "83"
  388. midikey
  389. MX 83
  390. kon SelectUp
  391. begin
  392.   global midikey
  393.   if midikey is true then play notes "MX 84"
  394.   else play notes "84"
  395. midikey
  396. MX 84
  397. +on SelectUp
  398. begin
  399.   playinterval("60")
  400. playinterval
  401. +on SelectUp
  402. begin
  403.   playinterval("61")
  404. playinterval
  405. +on SelectUp
  406. begin
  407.   playinterval("62")
  408. playinterval
  409. +on SelectUp
  410. begin
  411.   playinterval("63")
  412. playinterval
  413. +on SelectUp
  414. begin
  415.   playinterval("64")
  416. playinterval
  417. +on SelectUp
  418. begin
  419.   playinterval("65")
  420. playinterval
  421. +on SelectUp
  422. begin
  423.   playinterval("66")
  424. playinterval
  425. +on SelectUp
  426. begin
  427.   playinterval("67")
  428. playinterval
  429. +on SelectUp
  430. begin
  431.   playinterval("68")
  432. playinterval
  433. +on SelectUp
  434. begin
  435.   playinterval("69")
  436. playinterval
  437. +on SelectUp
  438. begin
  439.   playinterval("71")
  440. playinterval
  441. +on SelectUp
  442. begin
  443.   playinterval("72")
  444. playinterval
  445. on SelectUp
  446. begin
  447.   global testing, quizleft, quizzing, correct
  448.   put true into testing
  449.   put true into quizzing
  450.   put 10 into quizleft
  451.   put zero into correct
  452.   testone()
  453. testing
  454. /    quizleft
  455. /    quizzing
  456. correct
  457. testone
  458. on SelectUp
  459. begin
  460.   global testing, quizleft, quizzing
  461.   put true into testing
  462.   put one into quizleft
  463.   put false into quizzing
  464.   testone()
  465. testing
  466. /    quizleft
  467. /    quizzing
  468. testone
  469. kon SelectUp
  470. begin
  471.   global midikey
  472.   if midikey is true then play notes "MX 67"
  473.   else play notes "67"
  474. midikey
  475. MX 67
  476. +on SelectUp
  477. begin
  478.   playinterval("70")
  479. playinterval
  480. Mon SelectDown
  481. begin
  482.   global midikey
  483.   put the hilite of me into midikey
  484. midikey
  485. (playinterval note {
  486.   global testing, quizleft, quizzing, correct
  487.   if testing {
  488. if note = (textfield "Tested") {
  489. put "Correct!" into textfield "Tell"
  490. add 1 to correct
  491. for n = 0 to 359 step 2 set the hsv of 5 to n, 77, 170
  492. set the hsv of 5 to 340, 77, 170
  493. else {
  494. put "Unison m2 M2 m3 M3 P4 A4 P5 A5 M6 A6 M7 Octave" into intervals
  495. put word ((textfield "Tested") - 59) of intervals into theright
  496. put "Incorrect. It should be " & theright & "." into textfield "Tell"
  497. click on shape "60"
  498. wait one second
  499. click on shape (textfield "Tested")
  500. subtract one from quizleft
  501. if quizleft > 0 then { wait 2 testone() }
  502. else { 
  503. put false into testing
  504. if quizzing then {
  505. wait 2 seconds
  506. put "End of Quiz!  You got " & trunc(correct * 10) & "%."
  507. into textfield "Tell"
  508. play notes "cx d e f g a"
  509. put false into quizzing
  510.   } 'end of testing
  511.   else {
  512. click on shape "60"
  513. click on shape note
  514. put note into textfield "Played"
  515. put "Train your ears." into textfield "Tell"
  516. /*------------------------------------------------------*/
  517. testone {
  518.   global midikey, quizleft, quizzing
  519.   put ((random 12) + 60) into theInterval
  520.   put theInterval into textfield "Tested"
  521.   if quizzing put "(" & (11-quizleft) & ") Click on an Interval Button."
  522. into textfield "Tell"
  523.   else put "Click on an Interval Button." into textfield "Tell"
  524.   if midikey = true then play notes "M0:1 C4" & theInterval
  525.   else play notes "C4" & theInterval
  526. testone
  527. playinterval
  528. testing
  529. /    quizleft
  530. /    quizzing
  531. correct
  532. Tested
  533. Correct!
  534. Unison m2 M2 m3 M3 P4 A4 P5 A5 M6 A6 M7 Octave
  535. Tested
  536. ;Incorrect. It should be 
  537. Tested
  538. testone
  539. End of Quiz!  You got 
  540. cx d e f g a
  541. Played
  542. Train your ears.
  543. ncoPPPS
  544. midikey
  545. /    quizleft
  546. /    quizzing
  547. <Tested
  548. ) Click on an Interval Button.
  549. Click on an Interval Button.
  550. M0:1 C4
  551. Chicago                         
  552. p?0v`
  553. p?0|0
  554. s>|~?
  555. ptopaz                          
  556. 3o3xg
  557. .An interval is the distance between two notes.
  558. /Being able to recognize the important intervals
  559. -provides the student with a strong foundation
  560. .for the composition of melodies and harmonies.
  561. 0Each interval has a characteristic sound quality
  562. +that often corresponds to a simple feeling.
  563. 6For example, 
  564. minor intervals
  565.  convey sadness or
  566. 7apprehension. 
  567. Major intervals
  568.  indicate solidity
  569. ,or strength. The intervals you use to create
  570. -a melody or to build a cord are determined by
  571. +the kinds of complex emotions that you want
  572. to express.
  573. ~@OOK
  574. fon SelectUp
  575. begin
  576.   global midikey
  577.   if midikey play notes "M0:1 c e g"
  578.   else play notes "c e g"
  579. midikey
  580. M0:1 c e g
  581. c e g
  582. ron SelectUp
  583. begin
  584.   global midikey
  585.   if midikey is true play notes "M0:1 c d# f#"
  586.   else play notes "c d# f#"
  587. midikey
  588. M0:1 c d# f#
  589. c d# f#
  590. ILBMBMHD
  591.